From: Adel Gadllah Date: Mon, 18 Feb 2013 12:14:42 +0000 (+0100) Subject: layout: Fix regressions X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~4792 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=d9770dcffb75506325f6b92c893c117eca041b61;p=gnome-shell.git layout: Fix regressions Commit 6b4f52462071dc9af5b8915afebc8bc340b49ca2 removed the layer checks _updateFullscreen ... this causes corruption when alt-tabbing out of a fullscreen window so restore the check. The commit also removed the screen sized check so we are no longer setting all monitors to fullscreen. Fix that as well by using window.is_screen_sized() to perform the check. https://bugzilla.gnome.org/show_bug.cgi?id=694079 --- diff --git a/js/ui/layout.js b/js/ui/layout.js index 1a9a328a7..d855ade6b 100644 --- a/js/ui/layout.js +++ b/js/ui/layout.js @@ -776,10 +776,16 @@ const LayoutManager = new Lang.Class({ if (!metaWindow.showing_on_its_workspace()) continue; - if (metaWindow.is_monitor_sized()) { - let monitor = this.monitors[metaWindow.get_monitor()]; - if (monitor) - monitor.inFullscreen = true; + if (layer == Meta.StackLayer.FULLSCREEN || + (layer == Meta.StackLayer.OVERRIDE_REDIRECT && metaWindow.is_monitor_sized())) { + if (metaWindow.is_screen_sized()) { + for (let i = 0; i < this.monitors.length; i++) + this.monitors[i].inFullscreen = true; + } else { + let monitor = this.monitors[metaWindow.get_monitor()]; + if (monitor) + monitor.inFullscreen = true; + } } } },